Perpetual: Byzantine Fault Tolerance for Federated Distributed Applications
نویسندگان
چکیده
Modern distributed applications rely upon the functionality of services from multiple providers. Mission-critical services, possibly shared by multiple applications, must be replicated to guarantee correct execution and availability in spite of arbitrary (Byzantine) faults. Furthermore, shared services must enforce strict fault isolation policies to prevent cascading failures across organizational and application boundaries. Most existing protocols for Byzantine fault-tolerant execution do not support interoperability between replicated services while others provide poor fault isolation. Moreover, existing protocols place impractical limitations on application development by disallowing long-running threads of computation, asynchronous operation invocation, and asynchronous request processing. We present Perpetual, a protocol that facilitates unrestricted interoperability between replicated services while enforcing strict fault isolation criteria. Perpetual supports both asynchronous operation invocation and asynchronous request processing. Perpetual also supports long-running threads of computation, enabling Byzantine fault-tolerant execution of services that carry out active computations. We present performance evaluations demonstrating a moderate overhead due to replication. Type of Report: Other Department of Computer Science & Engineering Washington University in St. Louis Campus Box 1045 St. Louis, MO 63130 ph: (314) 935-6160 Perpetual: Byzantine Fault Tolerance for Federated Distributed Applications Sajeeva L. Pallemulle Haraldur D. Thorvaldsson Kenneth J. Goldman Department of Computer Science and Engineering Washington University in St. Louis, St. Louis, MO 63130 USA {sajeeva, harri, kjg}@cse.wustl.edu
منابع مشابه
Allied Agreement with Threshold Cryptography
Ally is a framework for building distributed services in a federated architecture. In a federation, nodes may occupy multiple, independent administrative domains, with complex trust relationships, connected by an asynchronous, wide-area network. We present a library that implements Byzantine fault-tolerant agreement, a critical building-block service in robust distributed systems, targeted at t...
متن کاملDesign and implementation of a Byzantine fault tolerance framework for non-deterministic applications
State-machine-based replication is an effective way to increase the availability and dependability of mission-critical applications. However, all practical applications contain some degree of non-determinism. Consequently, ensuring strong replica consistency in the presence of application non-determinism has been one of the biggest challenges in building dependable distributed systems. In this ...
متن کاملByzantine Fault Tolerant Execution of Long-running Distributed Applications
Long-running distributed applications that automate critical decision processes require Byzantine fault tolerance to ensure progress in spite of arbitrary failures. Existing replication protocols for data servers guarantee that externally requested operations execute correctly even if a bounded number of replicas fail arbitrarily. However, since these protocols only support passive state machin...
متن کاملTransparent Byzantine Fault-Tolerant Directory Service using COTS components
A directory service is a critical component of any distributed computing infrastructure given that its failure may lead to the inaccessibility of many network services. In this work, we propose an architecture that allows to add Byzantine fault tolerance to existing directory services in a transparent way: neither directory services nor client applications need to be modified. Moreover, this ar...
متن کاملExtending Byzantine Fault Tolerance to Replicated Clients
Byzantine agreement protocols for replicated deterministic state machines guarantee that externally requested operations continue to execute correctly even if a bounded number of replicas fail in arbitrary ways. The state machines are passive, with clients responsible for any active ongoing application behavior. However, the clients are unreplicated and outside the fault-tolerance boundary. Con...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008